home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 44
/
Aminet 44 (2001)(GTI - Schatztruhe)[!][Aug 2001].iso
/
Aminet
/
misc
/
emu
/
p-interp.lha
/
p-interp-0.4
/
pcode.h
< prev
next >
Wrap
Text File
|
2001-05-20
|
14KB
|
333 lines
/*
P-Code interpreter (to run the apple pascal system)
Copyright (C) 2000 Mario Klebsch
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
$Log: pcode.h,v $
Revision 1.2 2001/05/20 13:12:02 mario
CVS-Idents und Logs eingefügt
*/
#define SLDC_0 0 /* Short LoaD Constant 0 */
#define SLDC_1 1 /* Short LoaD Constant 1 */
#define SLDC_2 2 /* Short LoaD Constant 2 */
#define SLDC_3 3 /* Short LoaD Constant 3 */
#define SLDC_4 4 /* Short LoaD Constant 4 */
#define SLDC_5 5 /* Short LoaD Constant 5 */
#define SLDC_6 6 /* Short LoaD Constant 6 */
#define SLDC_7 7 /* Short LoaD Constant 7 */
#define SLDC_8 8 /* Short LoaD Constant 8 */
#define SLDC_9 9 /* Short LoaD Constant 9 */
#define SLDC_10 10 /* Short LoaD Constant 10 */
#define SLDC_11 11 /* Short LoaD Constant 11 */
#define SLDC_12 12 /* Short LoaD Constant 12 */
#define SLDC_13 13 /* Short LoaD Constant 13 */
#define SLDC_14 14 /* Short LoaD Constant 14 */
#define SLDC_15 15 /* Short LoaD Constant 15 */
#define SLDC_16 16 /* Short LoaD Constant 16 */
#define SLDC_17 17 /* Short LoaD Constant 17 */
#define SLDC_18 18 /* Short LoaD Constant 18 */
#define SLDC_19 19 /* Short LoaD Constant 19 */
#define SLDC_20 20 /* Short LoaD Constant 20 */
#define SLDC_21 21 /* Short LoaD Constant 21 */
#define SLDC_22 22 /* Short LoaD Constant 22 */
#define SLDC_23 23 /* Short LoaD Constant 23 */
#define SLDC_24 24 /* Short LoaD Constant 24 */
#define SLDC_25 25 /* Short LoaD Constant 25 */
#define SLDC_26 26 /* Short LoaD Constant 26 */
#define SLDC_27 27 /* Short LoaD Constant 27 */
#define SLDC_28 28 /* Short LoaD Constant 28 */
#define SLDC_29 29 /* Short LoaD Constant 29 */
#define SLDC_30 30 /* Short LoaD Constant 30 */
#define SLDC_31 31 /* Short LoaD Constant 31 */
#define SLDC_32 32 /* Short LoaD Constant 32 */
#define SLDC_33 33 /* Short LoaD Constant 33 */
#define SLDC_34 34 /* Short LoaD Constant 34 */
#define SLDC_35 35 /* Short LoaD Constant 35 */
#define SLDC_36 36 /* Short LoaD Constant 36 */
#define SLDC_37 37 /* Short LoaD Constant 37 */
#define SLDC_38 38 /* Short LoaD Constant 38 */
#define SLDC_39 39 /* Short LoaD Constant 39 */
#define SLDC_40 40 /* Short LoaD Constant 40 */
#define SLDC_41 41 /* Short LoaD Constant 41 */
#define SLDC_42 42 /* Short LoaD Constant 42 */
#define SLDC_43 43 /* Short LoaD Constant 43 */
#define SLDC_44 44 /* Short LoaD Constant 44 */
#define SLDC_45 45 /* Short LoaD Constant 45 */
#define SLDC_46 46 /* Short LoaD Constant 46 */
#define SLDC_47 47 /* Short LoaD Constant 47 */
#define SLDC_48 48 /* Short LoaD Constant 48 */
#define SLDC_49 49 /* Short LoaD Constant 49 */
#define SLDC_50 50 /* Short LoaD Constant 50 */
#define SLDC_51 51 /* Short LoaD Constant 51 */
#define SLDC_52 52 /* Short LoaD Constant 52 */
#define SLDC_53 53 /* Short LoaD Constant 53 */
#define SLDC_54 54 /* Short LoaD Constant 54 */
#define SLDC_55 55 /* Short LoaD Constant 55 */
#define SLDC_56 56 /* Short LoaD Constant 56 */
#define SLDC_57 57 /* Short LoaD Constant 57 */
#define SLDC_58 58 /* Short LoaD Constant 58 */
#define SLDC_59 59 /* Short LoaD Constant 59 */
#define SLDC_60 60 /* Short LoaD Constant 60 */
#define SLDC_61 61 /* Short LoaD Constant 61 */
#define SLDC_62 62 /* Short LoaD Constant 62 */
#define SLDC_63 63 /* Short LoaD Constant 63 */
#define SLDC_64 64 /* Short LoaD Constant 64 */
#define SLDC_65 65 /* Short LoaD Constant 65 */
#define SLDC_66 66 /* Short LoaD Constant 66 */
#define SLDC_67 67 /* Short LoaD Constant 67 */
#define SLDC_68 68 /* Short LoaD Constant 68 */
#define SLDC_69 69 /* Short LoaD Constant 69 */
#define SLDC_70 70 /* Short LoaD Constant 70 */
#define SLDC_71 71 /* Short LoaD Constant 71 */
#define SLDC_72 72 /* Short LoaD Constant 72 */
#define SLDC_73 73 /* Short LoaD Constant 73 */
#define SLDC_74 74 /* Short LoaD Constant 74 */
#define SLDC_75 75 /* Short LoaD Constant 75 */
#define SLDC_76 76 /* Short LoaD Constant 76 */
#define SLDC_77 77 /* Short LoaD Constant 77 */
#define SLDC_78 78 /* Short LoaD Constant 78 */
#define SLDC_79 79 /* Short LoaD Constant 79 */
#define SLDC_80 80 /* Short LoaD Constant 80 */
#define SLDC_81 81 /* Short LoaD Constant 81 */
#define SLDC_82 82 /* Short LoaD Constant 82 */
#define SLDC_83 83 /* Short LoaD Constant 83 */
#define SLDC_84 84 /* Short LoaD Constant 84 */
#define SLDC_85 85 /* Short LoaD Constant 85 */
#define SLDC_86 86 /* Short LoaD Constant 86 */
#define SLDC_87 87 /* Short LoaD Constant 87 */
#define SLDC_88 88 /* Short LoaD Constant 88 */
#define SLDC_89 89 /* Short LoaD Constant 89 */
#define SLDC_90 90 /* Short LoaD Constant 90 */
#define SLDC_91 91 /* Short LoaD Constant 91 */
#define SLDC_92 92 /* Short LoaD Constant 92 */
#define SLDC_93 93 /* Short LoaD Constant 93 */
#define SLDC_94 94 /* Short LoaD Constant 94 */
#define SLDC_95 95 /* Short LoaD Constant 95 */
#define SLDC_96 96 /* Short LoaD Constant 96 */
#define SLDC_97 97 /* Short LoaD Constant 97 */
#define SLDC_98 98 /* Short LoaD Constant 98 */
#define SLDC_99 99 /* Short LoaD Constant 99 */
#define SLDC_100 100 /* Short LoaD Constant 100 */
#define SLDC_101 101 /* Short LoaD Constant 101 */
#define SLDC_102 102 /* Short LoaD Constant 102 */
#define SLDC_103 103 /* Short LoaD Constant 103 */
#define SLDC_104 104 /* Short LoaD Constant 104 */
#define SLDC_105 105 /* Short LoaD Constant 105 */
#define SLDC_106 106 /* Short LoaD Constant 106 */
#define SLDC_107 107 /* Short LoaD Constant 107 */
#define SLDC_108 108 /* Short LoaD Constant 108 */
#define SLDC_109 109 /* Short LoaD Constant 109 */
#define SLDC_110 110 /* Short LoaD Constant 110 */
#define SLDC_111 111 /* Short LoaD Constant 111 */
#define SLDC_112 112 /* Short LoaD Constant 112 */
#define SLDC_113 113 /* Short LoaD Constant 113 */
#define SLDC_114 114 /* Short LoaD Constant 114 */
#define SLDC_115 115 /* Short LoaD Constant 115 */
#define SLDC_116 116 /* Short LoaD Constant 116 */
#define SLDC_117 117 /* Short LoaD Constant 117 */
#define SLDC_118 118 /* Short LoaD Constant 118 */
#define SLDC_119 119 /* Short LoaD Constant 119 */
#define SLDC_120 120 /* Short LoaD Constant 120 */
#define SLDC_121 121 /* Short LoaD Constant 121 */
#define SLDC_122 122 /* Short LoaD Constant 122 */
#define SLDC_123 123 /* Short LoaD Constant 123 */
#define SLDC_124 124 /* Short LoaD Constant 124 */
#define SLDC_125 125 /* Short LoaD Constant 125 */
#define SLDC_126 126 /* Short LoaD Constant 126 */
#define SLDC_127 127 /* Short LoaD Constant 127 */
#define ABI 128 /* ABsolute Integer */
#define ABR 129 /* ABsolure Real */
#define ADI 130 /* ADd Integer */
#define ADR 131 /* ADd Real */
#define LAND 132 /* Logical AND */
#define DIF 133 /* set DIFference */
#define DVI 134 /* DiVide Integer */
#define DVR 135 /* DiVide Real */
#define CHK 136 /* CHecK */
#define FLO 137 /* FLoat next to tOs */
#define FLT 138 /* FLoat Tos */
#define INN 139 /* set IN operation */
#define INT 140 /* set INTersection */
#define LOR 141 /* Logical OR */
#define MODI 142 /* MODulo Integer */
#define MPI 143 /* MultiPly Integer */
#define MPR 144 /* MultiPly Real */
#define NGI 145 /* NeGate Integer */
#define NGR 146 /* NeGate Real */
#define LNOT 147 /* Logical NOT */
#define SRS 148 /* SubRange Set */
#define SBI 149 /* SuBstract Integer */
#define SBR 150 /* SiBstract Real */
#define SGS 151 /* SinGleton Set */
#define SQI 152 /* SQuare Integer */
#define SQR 153 /* SQare Real */
#define STO 154 /* STOre indirect */
#define IXS 155 /* IndeX String array */
#define UNI 156 /* set UNIon */
#define LDE 157 /* LoaD Extended */
#define CSP 158 /* Call Standard Procedure */
#define LDCN 159 /* LoaD Constant Nil */
#define ADJ 160 /* ADJust set */
#define FJP 161 /* False JumP */
#define INC 162 /* INCrement field pointer */
#define IND 163 /* INdex and loaD */
#define IXA 164 /* IndeX Array */
#define LAO 165 /* Load glObal Address */
#define LSA 166 /* Load String Address */
#define LAE 167 /* Load Address Extended */
#define MOV 168 /* MOVe words */
#define LDO 169 /* LoaD glObal */
#define SAS 170 /* String ASsign */
#define SRO 171 /* StoRe glObal */
#define XJP 172 /* case JumP */
#define RNP 173 /* Return from Non-base Procedure */
#define CIP 174 /* Call Intermeduiate Procedure */
#define EQU 175 /* EQUal */
#define GEQ 176 /* Greater or EQual */
#define GRT 177 /* GReaTer */
#define LDA 178 /* LoaD intermediate Address */
#define LDC 179 /* LoaD multiple word Constant */
#define LEQ 180 /* Less or EQual */
#define LES 181 /* LESs */
#define LOD 182 /* LOaD intermediate */
#define NEQ 183 /* Not EQual */
#define STR 184 /* SToRe intermediate */
#define UJP 185 /* Unconditional JumP */
#define LDP 186 /* LoaD Packed field */
#define STP 187 /* STore Packed field */
#define LDM 188 /* LoaD Multiple words */
#define STM 189 /* STore Multiple words */
#define LDB 190 /* LoaD Byte */
#define STB 191 /* STore Byte */
#define IXP 192 /* IndeX Packed array */
#define RBP 193 /* Return from Base Procedure */
#define CBP 194 /* Call Base Procedure */
#define EQUI 195 /* EQUal Integer */
#define GEQI 196 /* Greater or EQual Integer */
#define GRTI 197 /* GReaTer Integer */
#define LLA 198 /* Load Local Address */
#define LDCI 199 /* LoaD Constant Integer */
#define LEQI 200 /* Less or EQual Integer */
#define LESI 201 /* LESs Integer */
#define LDL 202 /* LoaD Local */
#define NEQI 203 /* Not EQual Integer */
#define STL 204 /* STore Local */
#define CXP 205 /* Call eXternal Procedure */
#define CLP 206 /* Call Local Procedure */
#define CGP 207 /* Call Global Procedure */
#define LPA 208 /* Load Packed Array */
#define STE 209 /* STore Extended */
#define EFJ 211 /* Equal False Jump */
#define NFJ 212 /* Not equal False Jump */
#define BPT 213 /* BreakPoinT */
#define XIT 214 /* eXIT */
#define NOP 215 /* No OPeration */
#define SLDL_1 216 /* Short LoaD Local 1 */
#define SLDL_2 217 /* Short LoaD Local 2 */
#define SLDL_3 218 /* Short LoaD Local 3 */
#define SLDL_4 219 /* Short LoaD Local 4 */
#define SLDL_5 220 /* Short LoaD Local 5 */
#define SLDL_6 221 /* Short LoaD Local 6 */
#define SLDL_7 222 /* Short LoaD Local 7 */
#define SLDL_8 223 /* Short LoaD Local 8 */
#define SLDL_9 224 /* Short LoaD Local 9 */
#define SLDL_10 225 /* Short LoaD Local 10 */
#define SLDL_11 226 /* Short LoaD Local 11 */
#define SLDL_12 227 /* Short LoaD Local 12 */
#define SLDL_13 228 /* Short LoaD Local 13 */
#define SLDL_14 229 /* Short LoaD Local 14 */
#define SLDL_15 230 /* Short LoaD Local 15 */
#define SLDL_16 231 /* Short LoaD Local 16 */
#define SLDO_1 232 /* Short LoaD glObal 1 */
#define SLDO_2 233 /* Short LoaD glObal 2 */
#define SLDO_3 234 /* Short LoaD glObal 3 */
#define SLDO_4 235 /* Short LoaD glObal 4 */
#define SLDO_5 236 /* Short LoaD glObal 5 */
#define SLDO_6 237 /* Short LoaD glObal 6 */
#define SLDO_7 238 /* Short LoaD glObal 7 */
#define SLDO_8 239 /* Short LoaD glObal 8 */
#define SLDO_9 240 /* Short LoaD glObal 9 */
#define SLDO_10 241 /* Short LoaD glObal 10 */
#define SLDO_11 242 /* Short LoaD glObal 11 */
#define SLDO_12 243 /* Short LoaD glObal 12 */
#define SLDO_13 244 /* Short LoaD glObal 13 */
#define SLDO_14 245 /* Short LoaD glObal 14 */
#define SLDO_15 246 /* Short LoaD glObal 15 */
#define SLDO_16 247 /* Short LoaD glObal 16 */
#define SIND_0 248 /* Short load INDirect */
#define SIND_1 249 /* Short INdex 1 and loaD */
#define SIND_2 250 /* Short INdex 2 and loaD */
#define SIND_3 251 /* Short INdex 3 and loaD */
#define SIND_4 252 /* Short INdex 4 and loaD */
#define SIND_5 253 /* Short INdex 5 and loaD */
#define SIND_6 254 /* Short INdex 6 and loaD */
#define SIND_7 255 /* Short INdex 7 and loaD */
#define CSP_IOC 0 /* IoCheck() */
#define CSP_NEW 1 /* new() */
#define CSP_MVL 2 /* moveleft() */
#define CSP_MVR 3 /* moveright() */
#define CSP_XIT 4 /* exit() */
#define CSP_UREAD 5 /* unitread() */
#define CSP_UWRITE 6 /* unitwrite() */
#ifndef APPLE_1_3
#define CSP_IDS 7 /* idsearch() */
#define CSP_TRS 8 /* treesearch() */
#endif
#define CSP_TIM 9 /* time() */
#define CSP_FLC 10 /* fillchar() */
#define CSP_SCN 11 /* scan() */
#define CSP_USTAT 12 /* unitstat() */
#define CSP_LDSEG 21 /* LoadSegment() */
#define CSP_ULDSEG 22 /* UnloadSegment() */
#define CSP_TRC 23 /* trunc() */
#define CSP_RND 24 /* round() */
#define CSP_MRK 32 /* mark() */
#define CSP_RLS 33 /* release() */
#define CSP_IOR 34 /* ioresult() */
#define CSP_UBUSY 35 /* unitbusy() */
#define CSP_POT 36 /* PwrOfTen() */
#define CSP_UWAIT 37 /* unitwait() */
#define CSP_UCLEAR 38 /* unitclear() */
#define CSP_HLT 39 /* halt() */
#define CSP_MAV 40 /* memavail() */
#define XSYSERR 0
#define XINVNDX 1 /* invalid index */
#define XNOPROC 2 /* no segment */
#define XNOEXIT 3 /* exit from uncalled procedure */
#define XSTKOVR 4 /* stack overflow */
#define XINTOVR 5 /* integer overflow */
#define XDIVZER 6 /* divide by zero */
#define XBADMEM 7 /* invalid memory reference */
#define XUBREAK 8 /* user break */
#define XSYIOER 9 /* system IO error */
#define XUIOERR 10 /* user IO error */
#define XNOTIMP 11 /* unimplemented instruction */
#define XFPIERR 12 /* floating point math error */
#define XS2LONG 13 /* string to long */
#define XHLTBPT 14 /* Halt, Breakpoing */
#define XBRKPNT 15 /* Breakpoint */